package org.scheduler4j;

import java.util.Calendar;

/**
 * all constants used in Scheduler4J.
 * 
 * @author Eric
 *
 */
public class Constants {
	public static final String DEFAULT_DAY_FORMAT = "yyyy-MM-dd";

	/**
	 * constants for date type of date selector
	 */
	public static final Integer DAY_SUNDAY = 0;
	public static final Integer DAY_MONDAY = 1;
	public static final Integer DAY_TUESDAY = 2;
	public static final Integer DAY_WEDNESDAY = 3;
	public static final Integer DAY_THURSDAY = 4;
	public static final Integer DAY_FRIDAY = 5;
	public static final Integer DAY_SATURDAY = 6;
	public static final Integer DAY = 7;
	public static final Integer DAY_WEEKDAY = 8;
	public static final Integer DAY_WEEKENDDAY = 9;

	/**
	 * constants for months
	 */
	public static final Integer MONTH_JANUARY = 1;
	public static final Integer MONTH_February = 2;
	public static final Integer MONTH_MARCH = 3;
	public static final Integer MONTH_APRIL = 4;
	public static final Integer MONTH_MAY = 5;
	public static final Integer MONTH_JUNE = 6;
	public static final Integer MONTH_JULY = 7;
	public static final Integer MONTH_AUGUST = 8;
	public static final Integer MONTH_SEPTEMBER = 9;
	public static final Integer MONTH_OCTOBER = 10;
	public static final Integer MONTH_NOVEMBER = 11;
	public static final Integer MONTH_DECEMBER = 12;

	/**
	 * constants for sequence of date selector
	 */
	public static final Integer FIRST = 1;
	public static final Integer SECOND = 2;
	public static final Integer THIRD = 3;
	public static final Integer FOURTH = 4;
	public static final Integer LAST = 5;

	/**
	 * max time for one day.
	 */
	public static final int MAX_TIME = 24 * 60 * 60 * 1000 - 1;
	
	/**
	 * the default start day of a week
	 */
	public final static int WEEK_DEFAULT_START_DAY = Calendar.SUNDAY;
}
